Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Stack setup for GHC 9.2.8 #2531

Merged
merged 15 commits into from
Dec 23, 2023
Merged

Add Stack setup for GHC 9.2.8 #2531

merged 15 commits into from
Dec 23, 2023

Conversation

mmhat
Copy link
Collaborator

@mmhat mmhat commented Aug 19, 2023

This PR adds a stack.yaml for LTS 20, i.e. GHC 9.2.8. This one is now used by default but we run an additional CI job with the LTS 18 setup to ensure that Dhall builds for both GHCs. Additional changes:

  • Bumped GHC 8.10 stack setup to LTS 18.28.
  • Require lsp>=1.5.0.0 in dhall-lsp-server. This made the setup for GHC 9.2.8 easier.
  • Added kind signatures in Dhall.Syntax.Expr in order to fix doctests.
  • Updated the use GitHub Actions. In particular, use the new Haskell action (since the old one is deprecated).

@mmhat
Copy link
Collaborator Author

mmhat commented Sep 23, 2023

Apparently Hydra does not like the new text-rope dependency: https://hydra.dhall-lang.org/eval/21496896#tabs-errors
I am not really familiar with the Nix setup (and I am also not a Nix user) so a little help here would be highly appreciated.

@mmhat mmhat force-pushed the ghc-9.2.8 branch 2 times, most recently from 8ad7aae to 6503017 Compare October 25, 2023 15:28
@mmhat
Copy link
Collaborator Author

mmhat commented Oct 25, 2023

Ok, I think the issue with Hydra is the last missing thing here - but as already mentioned I don't know how to fix that on my own. Pinging @Gabriella439 , since she probably knows the setup best.

As a side note, I think this work here supersedes the one in #2428 (which I discovered too late).

Also, if we merge this we should adjust the required status checks for the main branch to match the new names of the jobs.

@Gabriella439
Copy link
Collaborator

ah, whoops, it's because of this issue:

https://hydra.dhall-lang.org/jobset/dhall-haskell/2531#tabs-errors

error: anonymous function at …/default.nix:1:1 called without required argument 'text-rope'

If you do cabal2nix cabal://text-rope > ./nix/packages/text-reop.nix I think that should fix it or at least give you a new error. I'd do it myself but I don't have push rights to your branch (also, for future reference, you can push your branches to this repository if you want me to be able to push fixes to them for you).

@Vekhir
Copy link
Contributor

Vekhir commented Dec 13, 2023

@mmhat There was a possible solution suggested by @Gabriella439, did you investigate if it solves the issue, so this PR can be merged?

Also, this PR doesn't fully address the tests, where lsp-test < 0.15 is specified (0.16 is the newest version). Have you looked at that? Else I'd do that.

@mmhat mmhat merged commit d7a024e into dhall-lang:main Dec 23, 2023
7 checks passed
@mmhat mmhat deleted the ghc-9.2.8 branch December 23, 2023 16:19
@mmhat
Copy link
Collaborator Author

mmhat commented Dec 23, 2023

@Vekhir Thanks for the ping! I think lsp-test < 0.15 is fine: All lsp-test version that are newer require lsp >= 2.0 which we exclude in our version constraints; IMHO we should relax the lsp-test upper bound once we moved to lsp >= 2.0.

@Gabriella439 Thanks a lot for the hint; That totally worked out! I took the liberty to merge the branch and adjust the required GitHub status checks accordingly. I also deleted the stale Travis CI webhook that didn't work anyway.

rvl added a commit to rvl/dhall-haskell that referenced this pull request Feb 23, 2024
* Bumped Stack snapshot to LTS 18.28

 - dhall-lsp-server: Require lsp>=1.5.0.0.

* Updated GitHub Actions

* Added Stack configuration for GHC 9.2.8

* Added CI job for GHC 8.10

* Allow passing extra arguments to the doctest test suites

* Cabal: Use hnix from Git repository

* Use single quotes in GHA condition

* GHA: Try nested os.runner

* GHA: Include used stack.yaml file in job name

* Updated mergify config

* Also skip package preparation step if we are not using stack.yaml

* Updated used actions

* Added text-rope.nix

* Added co-log-core.nix and lsp.nix

* Added lsp-types.nix
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants